<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class Administrador extends CI_Controller {

    function __construct() {
        parent::__construct();
        $this->load->model('MAdministrador');
        $this->load->model('MPostulante');
        $this->load->model('MEmpleador');
        $this->load->model('MCiudad');
        $this->load->model('MDisponibilidad');
        $this->load->model('MEspecialidad');
        $this->load->model('MEstadoPostulacion');
        $this->load->model('MEstadoPostulante');
        $this->load->model('MEstadoPostulanteSis');
        $this->load->model('MRegion');
        $this->load->model('MRol');
        $this->load->model('MMensaje');
        $this->load->model('MEvento');
    }

    public function InicioAdministrador() {
        $this->load->view('Administrador/InicioAdministrador');
    }

    public function MenuEmpleador() {
        $this->load->view('Administrador/ModificarPerfilEmpleador');
    }

    public function MostrarEmpleador() {

        $empleador = $this->MEmpleador->consultarempleador($_POST['RUT']);
        $this->load->view('Administrador/MostrarEmpleador', array('empleador' => $empleador));
    }

    public function MenuPostulante() {
        $this->load->view('Administrador/ModificarPerfilPostulante');
    }

    public function MostrarPostulante() {

        $postulante = $this->MPostulante->consultarpostulante($_POST['RUT']);
        $this->load->view('Administrador/MostrarPostulante', array('postulante' => $postulante));
    }

    public function MantencionTablas() {

        $this->load->view('Administrador/MantencionTablas');
    }

    public function EditarCiudad() {

        $ciudad = $this->MCiudad->consultarciudad();
        $this->load->view('Administrador/MostrarCiudad', array('ciudad' => $ciudad));
    }

    public function UpdateCiudad() {

        $this->MCiudad->UpdateCiudad($_POST);
    }

    public function EditarDisponibilidad() {

        $disponibilidad = $this->MDisponibilidad->consultardisponibilidad();
        $this->load->view('Administrador/MostrarDisponibilidad', array('disponibilidad' => $disponibilidad));
    }

    public function UpdateDisponibilidad() {

        $this->MDisponibilidad->UpdateDisponibilidad($_POST);
    }

    public function EditarEspecialidad() {

        $especialidad = $this->MEspecialidad->consultarespecialidad();
        $this->load->view('Administrador/MostrarEspecialidad', array('especialidad' => $especialidad));
    }

    public function UpdateEspecialidad() {

        $this->MEspecialidad->UpdateEspecialidad($_POST);
    }

    public function EditarEstadoPostulacion() {

        $estado_postulacion = $this->MEstadoPostulacion->consultarestadopostulacion();
        $this->load->view('Administrador/MostrarEstadoPostulacion', array('estado_postulacion' => $estado_postulacion));
    }

    public function UpdateEstadoPostulacion() {

        $this->MEstadoPostulacion->UpdateEstadoPostulacion($_POST);
    }

    public function EditarEstadoPostulante() {

        $estado_postulante = $this->MEstadoPostulante->consultarestadopostulante();
        $this->load->view('Administrador/MostrarEstadoPostulante', array('estado_postulante' => $estado_postulante));
    }

    public function UpdateEstadoPostulante() {

        $this->MEstadoPostulante->UpdateEstadoPostulante($_POST);
    }

    public function EditarEstadoPostulanteSis() {

        $estado_sistema = $this->MEstadoPostulanteSis->consultarestadopostulanteSis();
        $this->load->view('Administrador/MostrarEstadoPostulanteSis', array('estado_sistema' => $estado_sistema));
    }

    public function UpdateEstadoPostulanteSis() {

        $this->MEstadoPostulanteSis->UpdateEstadoPostulanteSis($_POST);
    }

    public function EditarRegion() {

        $region = $this->MRegion->consultarregion();
        $this->load->view('Administrador/MostrarRegion', array('region' => $region));
    }

    public function UpdateRegion() {

        $this->MRegion->UpdateRegion($_POST);
    }

    public function EditarRol() {

        $rol = $this->MRol->consultarrol();
        $this->load->view('Administrador/MostrarRol', array('rol' => $rol));
    }

    public function UpdateRol() {

        $this->MRol->UpdateRol($_POST);
    }

//////////FUNCION INGRESA NUEVO ADMINISTRADOR A BASE DE DATOS///////////////////////////////////////////       
    public function InsertarAdministrador() {
        $this->MAdministrador->IngresarAdministrador($_POST);

        $this->load->view('Prueba/PruebaBD', array('mensaje' => $Mensaje, 'test' => 'Hola!'));
    }

////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////FUNCION LLAMA/MUESTRA FORMULARIO DE REGISTRO DEL EMPLEADOR DESDE EL ADMINISTRADOR////////////      
    public function FormularioEmpleador() {

        $this->load->view('Administrador/RegistrarEmpleador');
    }

//////////////////////////////////////////////////////////////////////////////////////////////////////
//////////LLAMA/CARGA FORMULARIO DE MODIFICACION DE EMPLEADOR DESDE EL ADMINISTRADOR//////////////////    
    public function RegistrarEmpleador() {

        $this->load->view('Administrador/ModificaEmpleador');
    }

//////////////////////////////////////////////////////////////////////////////////////////////////////
//////////FUNCION LLAMA/MUESTRA FORMULARIO DE REGISTRO DEL POSTULANTE DESDE EL ADMINISTRADOR//////////// 
    public function RegistrarPostulante() {

        $this->load->view('Administrador/RegistrarPostulante');
    }

////////////////////////////////////////////////////////////////////////////////////////////////////////////


    public function ModificaPostulante() {

        $this->load->view('Administrador/ModificaPostulante');
    }

    public function ReporteAdministrador() {

        $this->load->view('Administrador/ReporteAdministrador');
    }

    public function BuscarEmpleador() {
//             $this->load->helper('url');

        $this->load->view('Administrador/BuscarEmpleador');
    }

    public function BuscarPostulante() {

        $this->load->view('Administrador/BuscarPostulante');
    }

    public function inicio() {
        $data['title'] = 'Inicio';
        $data['main_content'] = 'inicio';
        $this->load->view('plantillas/MainTemplate', $data);
    }

    public function PruebaPestanas() {

        $this->load->view('Prueba/PruebaPestanas');
    }

    public function Login() {

        $this->load->view('Administrador/LoginAdministrador');
    }

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


    public function LoginAdministrador() {


        //validar usuario y contraseña contra BD
        //ver que tipo de usuario es
        //crear datos en sesión
        //redireccionar a pagina o vista que corresponda.
//        $this->load->view('Prueba/Pruebas',array('postulante'=>$consulta));
        $userName = $_POST['userName'];
        $password = $_POST['password'];

//        if ($_POST['rol'] == 3) {


            $consulta = $this->MAdministrador->consultarexistencia($userName, $password);

            if (!$consulta == NULL) {
                $this->session->set_userdata('rol', 'administrador');

                $administrador = $this->MAdministrador->consultaradministrador($userName);
                $this->session->set_userdata('usuario', $administrador->USUARIO); // array( 'rut' => $postulante->RUT)
                $this->session->set_userdata('userData', array('isLoggedIn' => TRUE, "usuario" => "$administrador->USUARIO", "CONTRASENA" => $administrador->CONTRASENA, "COD_ROL" => $administrador->COD_ROL));
                $this->load->view('administrador/InicioAdministrador');
            } else {
                echo "Nombre de uuario o clave incorrecto";
                $this->load->view('administrador/LoginAdministrador');
            }
        
//        else {
//                echo "rol desconocido";
//                $this->load->view('login.php');
//        }



        $this->session->set_userdata(array("userData" => array("username" => $_POST['userName'], 'isLoggedIn' => TRUE)));
//        $this->load->view('Prueba/Pruebas', array('data' => $_POST));
    }

}
